package com.xrkj.b2c.utils;

import java.io.UnsupportedEncodingException;

import org.apache.commons.codec.binary.Base64;

/**
 * 
 * <B>系统名称：</B><BR>
 * <B>模块名称：</B><BR>
 * <B>中文类名：</B>Base64编码工具类<BR>
 * <B>概要说明：</B><BR>
 * @author 赵子靖
 * @since 2018年07月15日
 */
public class Base64Util {

	private static final String DEFAULT_CHARSET="UTF-8";//默认编码
	/**
	 * Base64编码
	 * 
	 * @param b
	 *            ----> 需要编码的字节数组
	 * @return String
	 */
	public static String encode(byte[] b) {

		return Base64.encodeBase64String(b);
	}

	/**
	 * Base64编码
	 * 
	 * @param text
	 *            ----> 需要编码的字符串
	 * @return String
	 */
	public static String encode(String text) {

		String result = null;
		try {
			result = Base64.encodeBase64String(text.getBytes(DEFAULT_CHARSET));
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		return result;
	}

	/**
	 * Base64解码
	 * 
	 * @param text
	 *            ----> 需要解码的字节数组
	 * @return String
	 */
	public static byte[] decode(byte[] b) {

		return Base64.decodeBase64(b);
	}

	/**
	 * Base64解码
	 * 
	 * @param text
	 *            ----> 需要解码的字符串
	 * @return String
	 */
	public static String decode(String text) {

		String result = null;
		try {
			result = new String(Base64.decodeBase64(text), DEFAULT_CHARSET);
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		return result;
	}
}
